#!/usr/bin/env Python
#-*-utf-8-*-
#author:zby
#TODO：单位转换器

print('欢迎使用万能单位转换器')
menu = {
    'T':'温度转换',
    'L':'长度转换',
    'C':'货币转换'
}
is_again = True
while(is_again):
    for k,v in menu.items():
        print(k,v)
    choose = input('请选择转换类型')
    if choose == 'T':
        temp = input('请输入温度（示例：1C或1F）')
        if temp.endswith('C'): # 判断是否以C结尾，如果是返回True
            while not temp.strip('C').isnumeric():
                print('输入格式有误,请重试')
                temp = input("请输入温度（示例：1C或1F）")
            temp = float(temp.strip('C')) # 去掉两头的C，链式写法，之后将str转换成float
            # 摄氏温度转华氏温度
            Tf = (9/5) * temp + 32
            print(f'Tf = (9/5)*{temp}+32 = %.3fF'%Tf)
        elif temp.endswith('F'):
            while not temp.strip('F').isnumeric():
                print('输入格式有误,请重试')
                temp = input('请输入温度（示例：1C或1F）：') 
            temp = float(temp.strip('F'))
            #华氏温度转摄氏温度
            Tc = (5/9) * (temp-32)
            print(f'Tc = (5/9)*({temp}-32) = %.3fC' %Tc)
        else:
            print('格式有误，示例：1C或1F')
    elif choose == 'C':
        temp = input('请输入数额（示例：1￥或1$）：')
        if temp.endswith('$'): #  判断是否以$结尾，如果是返回True
            while not temp.strip('$').isnumeric():
                print('输入格式有误,请重试')
                temp = input('请输入数额（示例：1￥或1$）：')
            temp = float(temp.strip('$')) # 去掉两头的$，链式写法，之后将str转换成float
            # 美元变人民币
            money = 7.0203 * temp 
            print(f'%.3f= 7.0203 * {temp}'%money)
        elif temp.endswith('￥'):
            while not temp.strip('￥').isnumeric():
                print('输入格式有误,请重试')
                temp = input('请输入数额（示例：1￥或1$）：')
            temp = float(temp.strip('￥'))
            #人民币转美元
            money =  temp / 7.0203
            print(f'%.3f = {temp} / 7.0203'%money)
        else:
            print('格式有误，示例：1$或1￥')
    elif choose == 'L':
        temp = input('请输入长度（示例：1ft或1m）')
        if temp.endswith('ft'): # 判断是否以ft结尾，如果是返回True
            while not temp.strip('ft').isnumeric():
                print('输入格式有误,请重试')
                temp = input('请输入长度（示例：1ft或1m）：')
            temp = float(temp.strip('ft')) # 去掉两头的ft，链式写法，之后将str转换成float
            # 英尺转换米
            longth = 0.3058 * temp 
            print(f'%.3f m= 0.3058 * {temp}ft'%longth)
        elif temp.endswith('m'):
            while not temp.strip('m').isnumeric():
                print('输入格式有误,请重试')
                temp = input('请输入长度（示例：1ft或1m）：')
            temp = float(temp.strip('m'))
            # 米转换英尺
            longth = temp / 0.3058
            print(f'%.3f ft= {temp}/0.3058  m'%longth)
        else:
            print('格式有误，示例：1m或1ft')
    else:
        print("格式有误，请重新输入")
    is_again = input('继续使用(y/n)') == 'y'
